'''
Created on 04/04/2011

@author: Alejandro
'''

arbol = ('def','fact',['n'],
     ('if',
      ('<', ('var','n'), ('num',1),
       ('return',('num',1)),
       ('return',
        ('*', ('var','n'),
         ('call','fact',
          [('-',('var','n'),('num',1))]
          )
         )
        )
       )
      )
     )

def Analizador(T,L_OP,L_OD):
    index = 0
    if ((T[index] != 'var') & (T[index] != 'num')):
        L_OP.append(T[index])
        index+=1
        while (index < T.__len__()):
            Analizador(T[index],L_OP,L_OD)
            L_OD.append(T[index])
            index+=1
    else:
        L_OD.append(T[index])
#End def
operadores = list()
operandos = list()

Analizador(arbol,operadores,operandos)
print(operadores)
print(operandos)